package annotation.test;

/**
 * 获取反射对象的三种方式，猜测 Spring 用的可能是第三种
 * @Author Jun jie Yi
 * @Date 2022/3/2 16:22
 */
public class GetReflectClass {
    public static void main(String[] args) {
        //第一种方式获取Class对象  
        Person stu = new Person();//这一new 产生一个Person对象，一个Class对象。
        Class c1 = stu.getClass();
        System.out.println(c1.getName());

        //第二种方式获取Class对象
        Class<Person> c2 = Person.class;
        System.out.println(c2.getName());

        //第三种方式获取Class对象
        String className = "annotation.test.Person";
        try {
            Class c3 = Class.forName(className);
            System.out.println(c3.getName());
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }
}
